﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using nmConnectionDatabase;

//NO FUNCIONA BUSCAR POR FECHA, AVERIGUAR COMO COMPARAR


namespace DarkPassenger
{
    public partial class MenuProductos_BusquedaAvanzada : Form
    {

        ConexionDB Conexion;
        string Consulta = "";

        public string GetString
        {
            get
            {
                return Consulta;
            }
        }



        public MenuProductos_BusquedaAvanzada()
        {
            InitializeComponent();
        }


        public MenuProductos_BusquedaAvanzada(ConexionDB conexion) :this()
        {
            Conexion = new ConexionDB();
            this.Conexion = conexion;
        }

        private void MenuProductos_BusquedaAvanzada_Load(object sender, EventArgs e)
        {

        }

        private void BusquedaUsuario()
        {

            //string Consulta = "";

            if (txtTipoProducto.Text.Trim() != "")
            {
               FiltrarConsultaUsuario(1,ref Consulta);
            }

            //if (txtIDConsola.Text.Trim() != "")
            //{
            //    FiltrarConsultaUsuario(2, ref Consulta);
            //}

            if (txtIDProducto.Text.Trim() != "")
            {
                FiltrarConsultaUsuario(3, ref Consulta);
            }

            if (txtNombre.Text.Trim() != "")
            {
                FiltrarConsultaUsuario(4, ref Consulta);
            }

            if (txtDescripcion.Text.Trim() != "")
            {
                FiltrarConsultaUsuario(5, ref Consulta);
            }

            if (txtFabricante.Text.Trim() != "")
            {
                FiltrarConsultaUsuario(6, ref Consulta);
            }

            if (txtGenero.Text.Trim() != "")
            {
                FiltrarConsultaUsuario(7, ref Consulta);
            }

            if (txtClasificacion.Text.Trim() != "")
            {
                FiltrarConsultaUsuario(8, ref Consulta);
            }



            MessageBox.Show(Consulta);
        }

       


        private void FiltrarConsultaUsuario(int num,ref string Consulta)
        {

           
            if (Consulta == "")
            {
                switch (num)
                {
                    case 1:
                        Consulta += "Productos.TipoProducto = " + "'" + txtTipoProducto.Text + "'";
                        break;
                    //case 2:
                    //    Consulta += "ProductosxConsola.IDConsola = " + txtIDConsola.Text + "";
                    //    break;
                    case 3:
                        Consulta += "Productos.IDProducto = " + txtIDProducto.Text + "";
                        break;
                    case 4:
                        Consulta += "Productos.Nombre LIKE '%" + txtNombre.Text + "%'";
                        break;
                    case 5:
                        Consulta += "Productos.Descripcion LIKE '%" + txtDescripcion.Text + "%'";
                        break;
                    case 6:
                        Consulta += "Productos.Fabricante LIKE '%" + txtFabricante.Text + "%'";
                        break;
                    case 7:
                        Consulta += "Productos.Genero LIKE '%" + txtGenero.Text + "%'";
                        break;
                    case 8:
                        Consulta += "Productos.Clasificacion LIKE '%" + txtClasificacion.Text + "%'";
                        break;
                }
            }


            else
            {
                 switch (num)
                {
                    case 1:
                        Consulta += " and Productos.TipoProducto = " + "'" + txtTipoProducto.Text + "'";
                        break;
                    //case 2:
                    //    Consulta += " and ProductosxConsola.IDConsola = " + txtIDConsola.Text + "";
                    //    break;
                    case 3:
                        Consulta += " and Productos.IDProducto = " + txtIDProducto.Text + "";
                        break;
                    case 4:
                        Consulta += " and Productos.Nombre LIKE '%" + txtNombre.Text + "%'";
                        break;
                    case 5:
                        Consulta += " and Productos.Descripcion LIKE '%" + txtDescripcion.Text + "%'";
                        break;
                    case 6:
                        Consulta += " and Productos.Fabricante LIKE '%" + txtFabricante.Text + "%'";
                        break;
                    case 7:
                        Consulta += " and Productos.Genero LIKE '%" + txtGenero.Text + "%'";
                        break;
                    case 8:
                        Consulta += " and Productos.Clasificacion LIKE '%" + txtClasificacion.Text + "%'";
                        break;
                 } 
                }
            }

        private void btnBuscar_Click(object sender, EventArgs e)
        {
            BusquedaUsuario();
            ReturnConsulta();
            this.Close();
        }

        public string ReturnConsulta()
        {
            return Consulta;
        }

        private void txtIDProducto_TextChanged(object sender, EventArgs e)
        {

        }

        private void txtIDProducto_KeyPress(object sender, KeyPressEventArgs e)
        {
            if ((e.KeyChar < 48 || e.KeyChar > 57) && e.KeyChar != 8 && e.KeyChar != 13)
                e.Handled = true; 
        }

        }
   



    }
